Skip to content

Fix VC Substitution#259

Merged
rcosta358 merged 56 commits into
mainfrom
fix-vc-substitution
Jun 21, 2026
Merged

Fix VC Substitution#259
rcosta358 merged 56 commits into
mainfrom
fix-vc-substitution

Conversation

@rcosta358

Copy link
Copy Markdown
Collaborator

Description

This PR fixes VCSubstitution, where it treating a binder equality as a substitution even when the binder variable was never used later in the VC chain. This meant that a binder like ∀#ret_8:int. #ret_8 == x + 1 could be incorrectly be removed and turn into true.

Example

∀#ret_8:int. #ret_8 == x + 1

incorrectly simplified to 

true

Related Issue

None.

Type of change

  • Bug fix
  • New feature
  • Documentation update
  • Code refactoring

Checklist

  • Added/updated tests
  • mvn test passes locally
  • Updated docs/README if behavior or API changed

@rcosta358 rcosta358 self-assigned this Jun 17, 2026
@rcosta358 rcosta358 added bug Something isn't working simplification Related to the simplification of expressions labels Jun 17, 2026

@CatarinaGamboa CatarinaGamboa left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lgtm

@rcosta358 rcosta358 changed the base branch from null-origins to main June 21, 2026 21:26
@rcosta358 rcosta358 merged commit fa8114a into main Jun 21, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bug Something isn't working simplification Related to the simplification of expressions

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants